package demo01;

/*
 * 有时我们需要一个共有方法，用于解决两个默认方法之间重复代码的问题。
 * 但是这个共有方法不应该让实现类使用，应该是私有化的。
 * 
 * 从Java 9开始，接口当中允许定义私有方法，用于解决以上问题：
 * 1. 普通私有方法，解决多个默认方法之间重复代码问题
 *  格式：
 *  private 返回值类型 方法名称(参数列表) {
 *      方法体
 *  }
 * 2. 静态私有方法，解决多个静态方法之间重复代码问题
 *  格式：
 *  private static 返回值类型 方法名称(参数列表) {
 *      方法体
 *  }
 * 
 * 备注：本人使用的版本是Java 8，因此不支持该功能，以下被注释的代码在Java 9及以上才可正常运行。
 */
public interface MyInterfacePrivateA {
    default void methodDefault1() {
        System.out.println("默认方法1");
        // methodCommon();
    }

    default void methodDefault2() {
        System.out.println("默认方法2");
        // methodCommon();
    }

    // private void methodCommon() {
    //     System.out.println("AAA");
    //     System.out.println("BBB");
    //     System.out.println("CCC");
    // }
}
